const express = require('express');
const bodyParser = require('body-parser');

const app = express();
const port = 8000;

// 使用 body-parser 中间件解析 POST 请求的表单数据
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());

// 处理 GET 请求，返回提交的数据
app.get('/', (req, res) => {
  const formData = req.query;  // 获取 GET 请求的查询参数
  
  let responseHTML = `<h1>接收到的数据</h1><ul>`;
  
  // 按 name:value 形式列出所有 GET 请求的参数
  for (let key in formData) {
    if (formData.hasOwnProperty(key)) {
      responseHTML += `<li><strong>${key}:</strong> ${formData[key]}</li>`;
    }
  }

  responseHTML += `</ul>`;
  res.send(responseHTML);
});

// 处理 POST 请求，返回提交的数据
app.post('/', (req, res) => {
  const formData = req.body;  // 获取 POST 请求的表单数据
  
  let responseHTML = `<h1>接收到的数据</h1><ul>`;
  
  // 按 name:value 形式列出所有 POST 请求的参数
  for (let key in formData) {
    if (formData.hasOwnProperty(key)) {
      responseHTML += `<li><strong>${key}:</strong> ${formData[key]}</li>`;
    }
  }

  responseHTML += `</ul>`;
  res.send(responseHTML);
});

// 启动服务器
app.listen(port, () => {
  console.log(`Server running at http://localhost:${port}`);
});
